package projeto.comercial.cliente.cci;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import plataforma.crud.cgt.ServiceCrud;
import plataforma.crudestatico.cci.CtrlCrudEstatico;
import plataforma.crudestatico.cih.FormularioDadosCRUDEstatico;
import plataforma.crudestatico.cih.PainelCRUDEstatico;
import projeto.comercial.cliente.cdp.Cliente;
import projeto.comercial.cliente.cgt.ServiceCliente;
import projeto.comercial.cliente.cih.FormDadosCliente;
import projeto.comercial.cliente.cih.PainelCliente;


@Controller
@Scope(value ="prototype")
public class CtrlCliente  extends CtrlCrudEstatico<Cliente>{

	
	@Autowired
	ServiceCliente serviceCliente;
	
	public ServiceCliente getServiceCliente() {
		return serviceCliente;
	}

	public void setServiceCliente(ServiceCliente serviceCliente) {
		this.serviceCliente = serviceCliente;
	}

	@Override
	public String definirTituloJanelaDados() {

		return "Dados do Cliente";
	}

	@Override
	public String definirTituloJanelaListagem() {
		return "Clientes";
	}

	@Override
	public ServiceCrud<Cliente> getServiceCrud() {

		return serviceCliente;
	}

	@Override
	public PainelCRUDEstatico<Cliente> definirPainelCRUD() {
		return new PainelCliente();
	}

	@Override
	public FormularioDadosCRUDEstatico<Cliente> definirFormularioCadastro() {

		return new FormDadosCliente();
	}

	@Override
	public Cliente factoryObjetoDados() {
		return new Cliente();
	}

	
	
	//obrigatorio para configurar a pesquisa padrao
		public void configurarComponentes() {
			super.configurarComponentes();
			possuiFiltro = true;
			
		}
		
		//obrigatorio para configurar a pesquisa padrao	
		public void atualizarFiltroPadrao() {

			getPainelPesquisa().filtrar();
		}
		
		
}
